home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
EnigmA Amiga Run 1998 July
/
EnigmA AMIGA RUN 29 (1998)(G.R. Edizioni)(IT)[!][issue 1998-07 & 08].iso
/
recent
/
iib122.lha
/
IIB
/
Threads
/
Additional
/
IARexx.lha
/
sphere.irx
< prev
next >
Wrap
Text File
|
1997-03-23
|
873b
|
43 lines
/* Makes the selected object into a sphere */
/* size is 100 units, scale as desired */
options results
if ~exists('libs:rexxmathlib.library')
then do
notify 'rexxmathlib.library is needed'
exit(0)
end
call addlib('rexxmathlib.library',0,-30)
address "Imagine.1"
displayrexxptr on
getgeometry
getaxisinfo
do i= 1 to pnt_num
normr = sqrt( (pnt_x.i-axis_position_x)**2 ,
+ (pnt_y.i-axis_position_y)**2 ,
+ (pnt_z.i-axis_position_z)**2 ) ;
if normr = 0
then
do
notify "No point may lie on the axis"
displayrexxptr off
exit(10)
end
normr = 100 / normr
pnt_x.i = (pnt_x.i-axis_position_x)*normr + axis_position_x
pnt_y.i = (pnt_y.i-axis_position_y)*normr + axis_position_y
pnt_z.i = (pnt_z.i-axis_position_z)*normr + axis_position_z
end
setgeometry
displayrexxptr off